package org.misalen.web.restful.job;

import org.json.JSONObject;

import retrofit2.http.Body;
import retrofit2.http.POST;
import rx.Observable;

/**
 * 
 * 帮助文档 http://square.github.io/retrofit/
 * 
 * 
 * 定义接口
 * 
 * @author misaya
 * 
 */
public interface RestfulService {

	/**
	 * 验证验证码driver/
	 */
	@POST("sms/code")
	Observable<JSONObject> smsCode(@Body JSONObject json);
	
	/**
	 * 登录driver/
	 */
	@POST("user/registered")
	Observable<JSONObject> registered(@Body JSONObject json);
	/**
	 * 登录driver修改信息/
	 */
	@POST("user/update")
	Observable<JSONObject> update(@Body JSONObject json);
	
	/**
	 * 登录driver/
	 */
	@POST("user/login")
	Observable<JSONObject> login(@Body JSONObject json);

	/**
	 * 自动登录driver/
	 */
	@POST("user/automatic/login")
	Observable<JSONObject> autoLogin(@Body JSONObject json);

	/**
	 * 自动登录driver/
	 */
	@POST("user/findpwd")
	Observable<JSONObject> findPwd(@Body JSONObject buildJson);
	@POST("carrier/hot")
	Observable<JSONObject> carrierhot(@Body JSONObject buildJson);
	
	
	
	@POST("driver/advertising/video/newtask")
	Observable<JSONObject> newtask(@Body JSONObject buildJson);
	
	@POST("driver/advertising/video/redwars")
	Observable<JSONObject> redwars(@Body JSONObject buildJson);
	
	@POST("driver/advertising/video/play")
	Observable<JSONObject> play(@Body JSONObject buildJson);
	
	@POST("driver/advertising/video/complete")
	Observable<JSONObject> complete(@Body JSONObject buildJson);
	
	@POST("driver/advertising/video/details")
	Observable<JSONObject> details(@Body JSONObject buildJson);
	
	@POST("basis/config")
	Observable<JSONObject> config(@Body JSONObject buildJson);
	
	@POST("driver/withdrawal/apply")
	Observable<JSONObject> withdrawalapply(@Body JSONObject buildJson);
	
	@POST("driver/withdrawal/record")
	Observable<JSONObject> withdrawalrecord(@Body JSONObject buildJson);
	

	
	@POST("machine/video/list")
	Observable<JSONObject> machinevideolist(@Body JSONObject buildJson);
	@POST("machine/video/location")
	Observable<JSONObject> machinevideolocation(@Body JSONObject buildJson);
	@POST("machine/video/runningtime")
	Observable<JSONObject> machinevideorunningtime(@Body JSONObject buildJson);
	@POST("machine/video/userinfo")
	Observable<JSONObject> machinevideouserinfo(@Body JSONObject buildJson);

}